/**
 * Created by
 */
'use strict';
const electron = require('electron');
// 控制应用生命周期的模块。
const {app} = electron;
// 创建原生浏览器窗口的模块。
const {BrowserWindow} = electron;
// 保持一个对于 window 对象的全局引用，如果你不这样做，
// 当 JavaScript 对象被垃圾回收， window 会被自动地关闭
let mainWindow;

/*const dialog = electron.dialog
const globalShortcut = electron.globalShortcut*/
const  { globalShortcut, Menu} = require('electron');
var isExe = 1;
var randNumber = 0;
const Menus = [];
/*const Menus = [
    {
        label:'Files',
        submenu:[
            {
                label: '网页版',
                role: 'help',
                submenu: [{
                    label: '网页版',
                    click: function () {
                        electron.shell.openExternal('https://snailpet.com/pc/login?isExe=1')
                    }
                }]
            },
            {
                label: '帮助',
                role: 'help',
                submenu: [{
                    label: '帮助文档',
                    click: function () {
                        electron.shell.openExternal('http://help.snailpet.cn/991243')
                    }
                }]
            }
        ]
    }
];*/

/*配置node环境*/
function createWindow() {
// 创建浏览器窗口。
    mainWindow = new BrowserWindow({
        width: 2000,
        height: 2000,
        webPreferences:{
            nodeIntegration: false
        }
    });
    // 加载。
    //mainWindow.loadURL('https://snailpet.com/pc/login?isExe=1');
    //mainWindow.loadURL('https://webtest.snailpet.cn/pc/login?isExe=1');
    //mainWindow.loadURL(`http://webdev.snailpet.cn/pc/login?isExe=1&randNumber=${Math.random()}`);
    mainWindow.loadURL(`http://ctest.snailpet.cn?randNumber=${Math.random()}`);
    // 启用开发工具。
    //mainWindow.webContents.openDevTools();
    // 当 window 被关闭，这个事件会被触发。
    mainWindow.on('closed', () => {
        // 取消引用 window 对象，如果你的应用支持多窗口的话，
        // 通常会把多个 window 对象存放在一个数组里面，
        // 与此同时，你应该删除相应的元素。
        mainWindow = null;
    });

    //可以创建窗口的下拉菜单
    const mainMenu = Menu.buildFromTemplate(Menus);
    Menu.setApplicationMenu(mainMenu);
}
// Electron 会在初始化后并准备
// 创建浏览器窗口时，调用这个函数。
// 部分 API 在 ready 事件触发后才能使用。
app.on('ready', createWindow);
// 当全部窗口关闭时退出。
app.on('window-all-closed', () => {
    // 在 macOS 上，除非用户用 Cmd + Q 确定地退出，
    // 否则绝大部分应用及其菜单栏会保持激活。
    if(process.platform !== 'darwin'){
        app.quit();
    }
});
app.on('activate', () => {
    // 在 macOS 上，当点击 dock 图标并且该应用没有打开的窗口时，
    // 绝大部分应用会重新创建一个窗口。
    if(mainWindow == null){
        createWindow();
    }
});

//通过注册快捷键，调开web的开发者模式
app.on('ready', function () {
    globalShortcut.register('CommandOrControl+Shift+L', () => {
        let focusWin = BrowserWindow.getFocusedWindow()
        focusWin && focusWin.toggleDevTools()
    })
})